Fix contributed upstream here:
https://debbugs.gnu.org/cgi/bugreport.cgi?bug=42694.

Index: emacs-26.3/src/xfns.c
===================================================================
--- emacs-26.3.orig/src/xfns.c
+++ emacs-26.3/src/xfns.c
@@ -2628,6 +2628,8 @@ xic_free_xfontset (struct frame *f)
 static XIMStyle
 best_xim_style (XIMStyles *xim)
 {
+  if (xim == NULL) goto out;
+
   int i, j;
   int nr_supported = ARRAYELTS (supported_xim_styles);

@@ -2636,6 +2638,7 @@ best_xim_style (XIMStyles *xim)
       if (supported_xim_styles[i] == xim->supported_styles[j])
	return supported_xim_styles[i];

+ out:
   /* Return the default style.  */
   return XIMPreeditNothing | XIMStatusNothing;
 }
